/**
 * @properties={typeid:35,uuid:"788B3D2B-6D1E-4D16-B4EB-165B80354919",variableType:-4}
 */
var fCodBarras = null;

/**
 * @properties={typeid:35,uuid:"C983D6F8-A8B9-4A9C-B080-ECF5A0B5C058"}
 */
var fNombreDoc = null;

/**
 * Callback method for when form is shown.
 *
 * @param {Boolean} firstShow form is shown first time after load
 * @param {JSEvent} event the event that triggered the action
 *
 * @properties={typeid:24,uuid:"CC3E4822-1BF4-4A07-AEE3-796EE7A1427F"}
 */
function onShow(firstShow, event) {
	// inicialización de variables
	if (tipo_cbte == 1 || tipo_cbte == 6)
		{
		fNombreDoc = "Factura"
		}
	if (tipo_cbte == 2 || tipo_cbte == 7)
		{
		fNombreDoc = "Nota de Débito"
		}
	if (tipo_cbte == 3 || tipo_cbte == 8)
		{
		fNombreDoc = "Nota de Crédito"
		}
	//Esta hecho como ejemplo, no seria la version definitiva hasta no tener todos los datos bien
	elements.bean_cod_barra.visible = false
	elements.gCodBarras.visible = true
	globals.gCodigo_afip()
	elements.bean_cod_barra.code = globals.gCod_final
	globals.gCod_barras = application.createJPGImage(elements.bean_cod_barra,elements.bean_cod_barra.getWidth(), elements.bean_cod_barra.getHeight());
	/*var $codigo = codigoAfip()
	if ($codigo != 1)
	{
		elements.bean_cod_barra.code = $codigo
		fCodBarras = application.createJPGImage(elements.bean_cod_barra,elements.bean_cod_barra.getWidth(), elements.bean_cod_barra.getHeight());
	}
	else
		globals.gDialog('Error','Error al generar el codigo de AFIP','OK','CerrarForm')
/*	var type = application.getApplicationType();
	if (type == 5)
		currentcontroller.showPrintPreview(true)
	else
	{
		var mes = fecha.getMonth()+1
		var nombre = cabecera_to_tipo_documento.descripcion + letra+'_'+'nro'+nro_factura+'_'+cabecera_to_clientes.razon_social+'_'+fecha.getDate()+mes+fecha.getFullYear()
		controller.print(true,false,plugins.pdf_output.getPDFPrinter('c:/andres/Infocom/Facturas/'+nombre+'.pdf'));
	}*/
}

/**
 * @properties={typeid:24,uuid:"A074F114-BE75-4492-B661-DC90A8026559"}
 */
function codigoAfip()
{
	//declaro todas las variables para encadenarlas luego
	var cuit = null
	var tipo_doc
	var sucursal
	var cai
	var fecha_venc
	var digito_verif
	var cod_final
	
	//edito las variables para que queden 40 caracteres
	//CUIT: Filtro los guiones dentro del campo
	
	cuit = "30707703918" // cuit de zirmer
	
	if (cuit.length != 11)
		globals.gDialog('Error','Error en longitud CUIT' + cuit.length,'OK','CerrarForm')
		return 1
	
	//TIPO_DOC: tengo que agregarle un 0 antes de poner el tipo_doc
	tipo_doc = utils.numberFormat(tipo_cbte,"00")
	if (tipo_doc.length != 2)
		globals.gDialog('Error','Error en longitud tipo_doc' + tipo_doc.length,'OK','CerrarForm')
		return 1
		
	//SUCURSAL
	sucursal = utils.numberFormat(punto_vta,"0000")
	if (sucursal.length != 4)
		globals.gDialog('Error','Error en longitud sucursal' + sucursal.length ,'OK','CerrarForm')
		return 1
	
	//CAI
	cai = cae
	if (cai.length != 14)
		globals.gDialog('Error','Error en longitud CAE' + cai.length ,'OK','CerrarForm')
		return 1	
	//FECHA DE VENCIMIENTO: tengo que ponerlo en formato aaaa/MM/dd sin las '/'
	//fecha_venc = fecha_venc_cae
	var f = fecha_venc_cae
	/* var f = utils.dateFormat(fecha_venc, 'yyyyMMdd')*/
	if (f.length != 8)
		globals.gDialog('Error','Error en longitud fecha vto cae' + f.length ,'OK','CerrarForm')
		return 1
		
	//DIGITO VERIFICADOR: segun reglas de AFIP
	cod_final = cuit.concat(tipo_doc.concat(sucursal.concat(cai.concat(f))))
	digito_verif = RutinaDigVerif (cod_final)
	
	//concateno todo en el campo CodigoAFIP de la tabla
	cod_final =  cod_final.concat(digito_verif)
	if (cod_final.length != 40)
		{
		globals.gDialog('Error','Error en longitud código final' + cod_final.length ,'OK','CerrarForm')
		return 1
		}
	else
		{
		return cod_final
		}

}
